/*
 * JGrass - Free Open Source Java GIS http://www.jgrass.org 
 * (C) HydroloGIS - www.hydrologis.com 
 * 
 * This library is free software; you can redistribute it and/or modify it under
 * the terms of the GNU Library General Public License as published by the Free
 * Software Foundation; either version 2 of the License, or (at your option) any
 * later version.
 * 
 * This library is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
 * FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more
 * details.
 * 
 * You should have received a copy of the GNU Library General Public License
 * along with this library; if not, write to the Free Foundation, Inc., 59
 * Temple Place, Suite 330, Boston, MA 02111-1307 USA
 */
package eu.hydrologis.jgrass.ui.utils;

import org.eclipse.core.runtime.IProgressMonitor;
import org.jgrasstools.gears.libs.monitor.IJGTProgressMonitor;
import org.opengis.util.ProgressListener;

/**
 * Wrapper for geotools' {@link ProgressListener}.
 * 
 * @author Andrea Antonello (www.hydrologis.com)
 */
public class EclipseProgressMonitorAdapter implements IJGTProgressMonitor, IProgressMonitor {

    private final IProgressMonitor eclipseMonitor;

    public EclipseProgressMonitorAdapter( IProgressMonitor eclipseMonitor ) {
        this.eclipseMonitor = eclipseMonitor;
    }

    public void beginTask( String name, int totalWork ) {
        eclipseMonitor.beginTask(name, totalWork);
    }

    public void done() {
        eclipseMonitor.done();
    }

    public void internalWorked( double work ) {
    }

    public boolean isCanceled() {
        return eclipseMonitor.isCanceled();
    }

    public void setCanceled( boolean value ) {
        eclipseMonitor.setCanceled(value);
    }

    public void setTaskName( String name ) {
        eclipseMonitor.setTaskName(name);
    }

    public void subTask( String name ) {
        eclipseMonitor.subTask(name);
    }

    public void worked( int work ) {
        eclipseMonitor.worked(work);
    }

    public void errorMessage( String message ) {
    }

    public void message( String message ) {
    }

    @Override
    public <T> T adapt( Class<T> arg0 ) {
        return null;
    }

}
